Motorcycle organic gathering for route sharing

ABSTRACT

An organic gathering system for route sharing is provided. The system includes a profile manager that determines settings associated with a first user that desires to pair with one or more other users during travel. An observation manager determines a group of users in a defined geographic area for pairing with the first user during at least a portion of the travel. The system also includes a navigation manager that provides instructions to the first user related to the pairing. The instructions include an action to be performed by the first user to pair with one or more of the other users.

BACKGROUND

Motorcycle riding has become popular and people from differentbackgrounds have become occasional riders or avid riders. This increasein riders has resulted in an increase in motorcycle accidents. Some ofthis increase may be due to drivers of other vehicles not seeing themotorcycle and its rider. Thus, to be more visible to others on theroad, some motorcyclists try to pair up with their friends and ride in agroup of two or more. However, it may be difficult to find friends toride with and, therefore, the rider is not able to take advantage of thevisibility provided by two or more riders.

BRIEF DESCRIPTION

This brief description is provided to introduce a selection of conceptsin a simplified form as compared to that described below in the detaileddescription. This brief description is not intended to be an extensiveoverview of the claimed subject matter, identify key factors oressential features of the claimed subject matter, nor is it intended tobe used to limit the scope of the claimed subject matter.

An implementation of this disclosure relates to an organic gatheringsystem for route sharing. The system includes a profile managerdetermining settings associated with a first vehicle that is to bepaired with at least a second vehicle during travel. The system alsoincludes an observation manager determining a group of vehicles in adefined geographic area for pairing with the first vehicle during atleast a portion of the travel. The group of vehicles includes at leastthe second vehicle. Further, the system includes a navigation managerproviding instructions to the first vehicle related to the pairing. Theinstructions include an action to be performed by the first vehicle topair with at least the second vehicle.

Another implementation of this disclosure relates to a method forpairing two or more users for travel together. The method includesdetermining, by a system comprising a processor, a group of userstraveling within a geographic area of a first user. The method alsoincludes evaluating, by the system, respective profile data of each userin the group of users based on profile data of the first user. Further,the method includes outputting, by the system, details related to asecond user of the group of users as a result of the evaluating. Themethod also includes providing, by the system, instructions for pairingwith the second user. The instructions include details related towaiting at a designated location until the second user arrives at thedesignated location.

A further implementation of this disclosure relates to an organicgathering system for pairing motorcycle riders. The system includes aprofile manager determining preferences associated with a motorcyclerider based on a determination that the motorcycle rider is to be pairedwith another motorcycle rider. The system also includes an observationmanager determining other motorcycle riders that are located within adefined area of the motorcycle rider. Further, the system includes arate monitor ranking the other motorcycle riders based on a comparisonbetween the preferences associated with the motorcycle rider andrespective preferences associated with the other motorcycle riders. Alsoincluded in the system is an interface component receiving a selectionof at least one motorcycle rider from the other motorcycle riders. Thesystem also includes a navigation manager outputting instructions thatallow the motorcycle rider to pair with at least the one motorcyclerider based on the motorcycle rider stopping at a determined locationfor at least the one motorcycle rider.

The following description and annexed drawings set forth certainillustrative aspects and implementations. These are indicative of but afew of the various ways in which one or more aspects may be employed.Other aspects, advantages, or novel features of the disclosure willbecome apparent from the following detailed description when consideredin conjunction with the annexed drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

Aspects of the disclosure are understood from the following detaileddescription when read with the accompanying drawings in which:

FIG. 1 illustrates an example non-limiting organic gathering system thatmay be utilized with various modes of transportation according to anaspect of this disclosure;

FIG. 2 illustrates an example non-limiting organic gathering system forroute sharing according to an aspect of this disclosure;

FIG. 3 illustrates an example non-limiting system for pairing riders forat least a portion of a route according to an aspect of this disclosure;

FIG. 4 illustrates an example non-limiting system that provides aranking of nearby riders for rider pairing according to an aspect ofthis disclosure;

FIG. 5 illustrates an example non-limiting system that utilizesautomated learning according to an aspect of this disclosure;

FIG. 6 illustrates an example non-limiting method for pairing ridersaccording to an aspect of this disclosure;

FIG. 7 illustrates an example non-limiting method for providinginformation to a driver to allow the driver to form a group with otherdrivers according to an aspect of this disclosure;

FIG. 8 illustrates an example, non-limiting, computer-readable medium orcomputer-readable device including processor-executable instructionsconfigured to embody one or more of the aspects of this disclosure; and

FIG. 9 illustrates an example, non-limiting computing environment whereone or more of the aspects of this disclosure are implemented.

DETAILED DESCRIPTION

Embodiments or examples, illustrated in the drawings are disclosed belowusing specific language. It will nevertheless be understood that theembodiments or examples are not intended to be limiting. Any alterationsand modifications in the disclosed embodiments, and any furtherapplications of the principles disclosed in this document arecontemplated as would normally occur to one of ordinary skill in thepertinent art.

Motorcycle riders may like to ride in groups, which may be based on thebelief that there is safety in numbers. More riders may make the groupmore visible to others on the road. However, at times it may bedifficult to find someone to ride with and, therefore, a rider may ridealone. The various aspects disclosed herein allow two or more riders (oroperators of other vehicles) to pair with each other for at least aportion of a route. Other vehicles that may utilize the disclosedaspects include, but are not limited to, bicycles, various off-roadvehicles, automobiles (e.g., driving highway 50 across Nevada), boats,drones, planes, spacecraft, and so on.

The invention relates to allowing motorcycle riders to group togetherfor safety or for other purposes. For example, in many situationsmotorcycle riders like to ride in groups or packs since there is safetyin numbers. Further, with more riders together, the riders are morevisible to others (e.g., automobile drivers) than the riders would beriding alone or in groups of two or three.

The aspects disclosed herein allow riders to group together throughapplications and/or connections while still allowing each rider to beflexible and leave the group whenever the rider would like to leave. Ahelmet (or other wearable device) allows the motorcycle riders to bepaired and connect with each other. In one example, a motorcycle rideris notified that she should stop at a yellow light and wait for anothermotorcycle rider that is approaching the light.

A helmet, such as the helmet disclosed in Skully (U.S. Patent App. Pub.No. 2013/0305437), which is incorporated herein in its entirety, may beutilized to allow the riders to communicate with each other. The helmetsmay connect with a server, which allows motorcycle riders to obtain thelocation of the other riders. In an example, a central server may beused to connect the motorcyclists together. Alternatively, short rangecommunications may be utilized. Further, communications may beinteracted with one another.

Diagrams (e.g., maps) may be placed on (or within view) of the helmet toallow a rider to determine where one or more other riders are located.For example, a rider may slow down to allow time for one or more othermotorcycle riders to catch up so that they may ride together as a group.According to some implementations, slowing down (speeding up, or takinganother action) is relevant to more than a map/diagram view. Forexample, the rider may receive specific instructions (e.g., reducespeed) as text, audio, or through other user interface types (e.g.,haptic feedback).

The disclosed aspects may group together motorcyclist riders withsimilar riding habits, skill level, bike style, and so on. For example,riders that tend to ride slowly (e.g., the speed limit or slower) may bepaired with other riders that typically ride slowly. In another example,riders that like to take sightseeing routes and stop at localrestaurants may be paired together, as opposed to being paired withriders that have a particular destination in mind and do not like totravel too far off the beaten path.

FIG. 1 illustrates an example non-limiting organic gathering system 100that may be utilized with various modes of transportation according toan aspect of this disclosure. The organic gathering system 100 allows amotorcycle rider, for example, to determine if there are other riders inthe area. If there are other riders, the organic gathering system 100allows the rider to selectively connect with one or more of those otherriders. For example, the riders may connect in order to travel togetheras a group.

Although the various aspects are discussed with respect to a motorcycleand a motorcycle rider, the aspects are not limited to thisimplementation. Instead, the aspects may be utilized by drivers and/orpassengers of other modes of transportation including, but not limitedto, vehicles (e.g., automobile, truck), bicycles, skateboards,pedestrians, joggers, drones, air vehicles, watercraft, and so on. In anexample, the disclosed aspects may be utilized when the vehicle does nothave a rider/user (e.g., a drone). For example, two or more drones maybe delivering medical prescriptions to the same house, different houseson the same street, different houses in the same city, and so on. Inthis case, the drones may be paired to facilitate at least a portion ofthe trip (or route) being shared by the two or more drones.

In another example, two or more drones may benefit from the disclosedaspects even if one or more of the drones are controlled by differentoperators (e.g., not by the same controller). In some implementations,one or more of the drones may be an autonomous drone or asemi-autonomous drone. For example, a first shipping/delivery servicemay operate a first drone and a second shipping/delivery service mayoperate two other drones (e.g., a second drone and a third drone). Thus,at least portions of a route of the first drone may be combined withportions of the routes of the second drone and/or the third drone. Thismay provide safety in numbers, consolidation of noise, consolidation ofair traffic space, and so on. Further, this pairing may be performed inthe absence of a physical driver controlling the vehicle (e.g., thedrone).

The organic gathering system 100 may include at least one memory 102that may store computer executable components and/or computer executableinstructions. The organic gathering system 100 may also include at leastone processor 104, communicatively coupled to the at least one memory102. The at least one processor 104 may facilitate execution of thecomputer executable components and/or the computer executableinstructions stored in the memory 102. The term “coupled” or variantsthereof may include various communications including, but not limitedto, direct communications, indirect communications, wiredcommunications, and/or wireless communications.

It is noted that although the one or more computer executable componentsand/or computer executable instructions may be illustrated and describedherein as components and/or as instructions separate from the memory 102(e.g., operatively connected to the memory 102), the various aspects arenot limited to this implementation. Instead, in accordance with variousimplementations, the one or more computer executable components and/orthe one or more computer executable instructions may be stored in (orintegrated within) the memory 102. Further, while various componentsand/or instructions have been illustrated as separate components and/oras separate instructions, in some implementations, multiple componentsand/or multiple instructions may be implemented as a single component oras a single instruction. Further, a single component and/or a singleinstruction may be implemented as multiple components and/or as multipleinstructions without departing from the example embodiments.

The organic gathering system 100 may include a profile manager 106 thatdetermines settings associated with a first user (e.g., the motorcyclerider). The settings may be determined based on input received from thefirst user and/or based on observed information. According to animplementation, the profile manager 106 may receive data manually inputby the first user, which may include preferences and other information.According to another implementation, the profile manager 106 may obtainthe information based on historical information and/or currentinformation related to the first user.

The system 100 may also include an observation manager 108 thatdetermines a group of users (e.g., other motorcycle riders) in a definedgeographic area. For example, the defined geographic area may be aconfigurable range or radius around the first user. According to someimplementations, the defined area may be complex. For example, riderswithin a radius, and heading to destinations that are located within aradius of one another may constitute a group of users. In anotherexample, riders moving in a same direction may constitute a group ofusers. Further, the group of users may be determined based on othersimilarities between the users.

Each user in the group of users may be those users that have opted intothe system (e.g., agreed to participate in route sharing with otherusers). It is noted that in accordance with one or more implementationsdescribed in this disclosure, users may opt-out of providing personalinformation, demographic information, location information, proprietaryinformation, sensitive information, or the like in connection with datagathering aspects. Moreover, one or more implementations describedherein may provide for anonymizing collected, received, and/ortransmitted data. Further, a user may opt-out of providing informationat any time, regardless of whether the user previously opted-in toproviding the information.

A navigation manager 110 may provide instructions to the first userrelated to the pairing. The navigation manager 110 may output theinstructions in an audio format, a visual format, a haptic format, orcombinations thereof. Thus, the navigation manager 110 may providedynamic notifications related to other riders in the area andinstructions on how to pair up with the other riders. For example, thenavigation manager 110 may notify the first user that there is anotheruser up ahead and if the first user travels just a little faster, shewill catch up with the other user. In another example, the navigationmanager 110 may inform the first user to slow down or to stop at thenext light (e.g., do not go through a yellow light) to allow anotheruser to catch up to the first user. In a further example, the first usermay be instructed to wait in a nearby parking lot for the other user.Additionally, the navigation manager 110 may instruct the first user totake a short detour in order to pair with the other driver.

Further, the one or more other users (e.g., other motorcycle riders)with which the first user is being paired may be given information aboutthe first user. For example, the other users may be notified that thefirst user is waiting at the red light up ahead or that the first userhas slowed down (and the others should speed up) to pair with eachother.

It should be noted that regardless of the action of the first rider, thesecond rider may be provided separate instructions. For example, asystem associated with the second rider may act as if the second rider(discussed herein) is the first rider, and as if the first rider(discussed herein) is the second rider, without necessitating any changeto the actions of the system 100 of the first rider. In a similarmanner, each rider and their respective system may consider herself tobe the “first rider” and the respective system (as well as the system100) will still function appropriately.

According to some implementations, the navigation manager 110 may outputa map that illustrates the relationship between the first user and theother users in the group of users. The relationship may includesimilarities between the first user and the other users (e.g., drivinghabits, driving behavior, intended route, and so on). Additionally oralternatively, the relationship may include group affiliation and/orfiltering based on group affiliation before it reaches the point ofbeing shown on a map. Further, the map may illustrate the currentlocation of each of the riders to facilitate pairing.

In an implementation, after two or more riders are paired, the systemmay continue to attempt to pair those two or more riders with otherriders. Thus, three or more riders may be paired at different times. Forexample, a first and second rider are paired and later those two ridersare paired with a third rider. A few minutes later, a fourth rider ispaired with the first three riders. Thereafter, the first rider turnsoff the road, away from the other three riders. This leaves the secondrider, third rider, and fourth rider as a group. Other riders may joinand/or one of the riders may leave the group. In such a manner, attemptsare made to keep two or more riders together in a dynamic group.Alternatively or additionally, the group might be split. For example, agroup of riders might separate with the first and second riders turningnorth and the third and fourth riders turning south.

FIG. 2 illustrates an example non-limiting organic gathering system 200for route sharing according to an aspect of this disclosure. Asdiscussed herein, the various aspects allow users (e.g., riders,drivers, or others) to group through wireless communication networkapplications and/or connections while still allowing a first user (orsubsequent users) to be flexible and leave the group as desired.

According to various implementations, a helmet may be utilized tocommunicate the pairing information to the first user and/or to allowthe first user to communicate with other users (e.g., other riders). Inone example, a motorcycle rider may be notified that they should stop ata yellow light so they may wait for an upcoming motorcycle rider.

As a specific example a helmet, such as the augmented reality motorcyclehelmet described in U.S. Patent Application Publication No.2013/0305437, which is incorporated herein in its entirety, may beutilized with the disclosed aspects. However, other types of motorcyclehelmets may be utilized and the disclosed aspects are not limited to asingle implementation of a motorcycle helmet. It is noted that althoughvarious aspects are discussed with respect to a helmet, other items maybe utilized instead of a helmet. For example, the various aspects may beutilized with a mobile device, a display built into the motorcycle (orother vehicle), an audio device, and so on. In addition, for vehiclesthat do not have a rider/driver, the instructions (which may take theform of notifications) may be provided at a location located remote fromthe vehicle (e.g., at a device associated with a controller of thevehicle).

The helmets may connect with a server such that motorcycle riders areprovided information as to where other motorcycle riders are located.Further, communications between motorcycle riders may be facilitatedthrough interaction with the helmet and the server, or over acommunications network (e.g., short-range communications network, along-range communications network, a mobile network, and so on).Further, diagrams or a map may be placed on the helmet (e.g., on ashield or heads up display) such that the rider is provided informationas to where the other riders are located. For example, a rider may slowdown to let other motorcycles catch up with her.

A linking component 202 may pair the first user (e.g., motorcycle rider)with a second user (e.g., another motorcycle rider) based on respectiveriding habits (or habits associated with another mode oftransportation). In an example, slower riders may be paired with otherslower riders, but would not be paired with a rider that tends to rideat an excessive speed. For example, the profile manager 106 (orsubsequent profile managers associated with other users) may gatherinformation and determine settings associated with the first user. Thesettings may include information such as a safety rating of the firstuser, whether the first user habitually speeds or maintains the speedlimit, and so on. According to an implementation, the profile manager106 also gathers information related to the other users and maintainsthe settings for those other users (e.g., at a centralized server).However, according to some implementations, the settings are maintainedby different profile managers associated with devices of each respectiveuser and information communicated as necessary to pair two or moreusers.

Although discussed with respect to riding habits, other parameters maybe utilized additionally or alternatively. For example, a parameter maybe a skill level, such as beginning, advanced, experienced, and so on.In another example, a parameter may be a bike style. Such styles mayinclude sport, cruiser, touring, and so on. In yet another example, aparameter may be a displacement. For example, the displacement may be250 cc, 1000 cc, and so on, or an equivalent for electric or other drivebikes.

Further, according to some implementations, the pairing may include notjust the actual style of the rider, but also their desired style. Forexample, a safety rating may be determined for a rider. In this case, arider with a low rating (or another designation that identifies a poorsafety rating) may nonetheless desire to ride with riders that have ahigh safety rating. In this way, the poorly rated rider may learn bettersafety habits and practices from the highly rated riders.

In some implementations, the highly safe rated rider(s) might beprovided the opportunity to choose whether to accept the lower safetyranked riders that want to learn, or to only ride with other saferiders. Based on a saved preference file (e.g., user preferences), alearned preference, or a choice at the time of the decision, the linkingmay be denied or approved. Thus, the system might be utilized to pairexperienced or more skilled riders with less experienced or less skilledriders.

As an example, the profile manager 106 may obtain information about thefirst user and map that information to predefined settings (e.g.,preferences, likes, dislikes, driving behavior, and so on). Thepredefined settings may have different subsets that provide granularityrelated to the particular setting. For example, a setting related tospeed may include a subset for “drives at or below speed limit,” “driveswithin 10 miles above speed limit,” “speeds over ten miles above speedlimit,” and other subsets. Thus, as information is observed (or manuallyinput by the user), each user may be placed into the appropriate subset.

The settings and/or subsets may dynamically change as the user'sbehaviors or habits change. For example, the user may habitually speedand, therefore, this habit places the user in the speed category. Thenthe user's wife has a baby and the user decides to no longer be recklessand, therefore, drives within 10 miles of the speed limit. Based on thischange, the user is moved from the speed category to the 10 milescategory. The other users are categorized in a similar manner and, basedon these categorizations, the linking component 202 makes adetermination as to which users would be a good match for each other.

According to some implementations, the system 200 may include aninterface component 204 that allows the first user to interact with thesystem 200. For example, the first user may indicate that she would liketo be paired with other users, even if the riding behavior settings donot match. Thus, for at least a portion of the trip, the first user maybe paired with another user that tends to ride faster (or slower) thanthe first user normally rides.

A willingness to be paired with riders who are open to whom they ridewith may also be utilized as a preference. For example, a first ridermay be willing to ride with a faster second rider. In this case, theremight be some assumption that the first rider will conform to thepreferences of the second rider by riding faster. This is distinct fromboth riders being willing to change from their usual system, meet in themiddle, or otherwise mutually adapt their behavior to each other, whichmight be the case according to some implementations.

Further, the first user may interact with the interface component 204 toprovide a listing of other users that she does not want to be pairedwith. This information may be provided at any time. For example, thefirst user may be paired with someone and, for various reasons thepairing does not work. Therefore, the first user may indicate that shedoes not want to be paired with that person in the future. In somecases, the request not to be paired with someone may be made in advance(e.g., based on a prior relationship between the users). In this case,even if the users would benefit from being paired, the linking component202 ignores the information related to the other user being around and acandidate for pairing. In some implementations, a map or otherindication may include the other user, but that user may bedistinguished from the other users (e.g., a warning provided, an icon ofthe user is indicated but a red “X” is placed over the icon of the useron the map). In this manner, the presence of the other user is known,but information or instructions related to linking with that user is notprovided.

The indication not to pair with another rider may be one sided such thatonly one of the riders needs to identify the other rider with a requestnot to be paired. In some implementations, information about the ridersare not provided to each other (e.g., the map does not include thelocation of the respective riders).

In a similar manner, the first user may use the interface component 204to provide an indication of others she would like to be paired with andthese others may be priority riders. For example, there is another userthat the first user may be paired with that is very close (e.g., withintwo minutes). There is also a designated rider (e.g., a priority rider)that is a further away (e.g., within five minutes). The system 200 mayignore the close rider and let the first user know that the priorityrider is five minutes away and provide the option to pair with thepriority rider. In some cases, the system 200 may notify the first userof both riders, with an indication that one of the riders is thepriority rider. Thus, the interface component 204 may output the map orother indication that distinguishes priority riders from other riders.Further, the first user may indicate the priority riders at any time, ormay change a rider status at any time.

Further, according to some implementations, another user might notdesire to be paired with the first user, or might consider the firstuser a priority rider. Thus, the preferences of the other user may beutilized to determine the linking.

According to some implementations, the interface component 204 (as wellas other interface components discussed herein) may provide a graphicaluser interface (GUI), a command line interface, a speech interface,Natural Language text interface, and the like. For example, a GUI may berendered that provides a user with a region or means to load, import,select, read, and so forth, various requests and may include a region topresent the results of the various requests. These regions may includeknown text and/or graphic regions that include dialogue boxes, staticcontrols, drop-down-menus, list boxes, pop-up menus, as edit controls,combo boxes, radio buttons, check boxes, push buttons, graphic boxes,and so on. In addition, utilities to facilitate the informationconveyance, such as vertical and/or horizontal scroll bars fornavigation and toolbar buttons to determine whether a region will beviewable, may be employed. Thus, it might be inferred that the user didwant the action performed.

The user may also interact with the regions to select and provideinformation through various devices such as a mouse, a roller ball, akeypad, a keyboard, a pen, gestures captured with a camera, a touchscreen, and/or voice activation, for example. According to an aspect, amechanism, such as a push button or the enter key on the keyboard, maybe employed subsequent to entering the information in order to initiateinformation conveyance. However, it is to be appreciated that thedisclosed aspects are not so limited. For example, merely highlighting acheck box may initiate information conveyance. In another example, acommand line interface may be employed. For example, the command lineinterface may prompt the user for information by providing a textmessage, producing an audio tone, or the like. The user may then providesuitable information, such as alphanumeric input corresponding to anoption provided in the interface prompt or an answer to a question posedin the prompt. It is to be appreciated that the command line interfacemay be employed in connection with a GUI and/or API. In addition, thecommand line interface may be employed in connection with hardware(e.g., video cards) and/or displays (e.g., black and white, and EGA)with limited graphic support, and/or low bandwidth communicationchannels. This may also be performed at the time of the ride (from themotorcycle), or offline (e.g., at a computer hours before the ride).

FIG. 3 illustrates an example non-limiting system 300 for pairing ridersfor at least a portion of a route according to an aspect of thisdisclosure. Various riders may be paired for any length of time during atrip. For example, a trip may include various route segments. The routesegments may be defined based on various criteria including city blocks,highway mile markers, miles to be driven, and so on. Further, eventhough riders are paired, any of the riders may leave the grouping asdesired.

Included in the system 300 may be a route determiner 302 that evaluatesplanned routes and/or inferred routes of each user of the group ofusers. According to an implementation, each user may interface withrespective interface components to input a planned route (e.g.,traveling from one state to another state and using designed highways).For example, one or more riders may enter or communicate otherintermediate nodes in a route (e.g., restroom breaks, meal breaks,sightseeing breaks, and so on). Each rider may individually choose tojoin the break together, or continue separately (and perhaps meetingagain later).

In an additional or alternative implementation, routes of the respectiveusers may be determined based on observations and/or historicalinformation (e.g., on weekdays the rider travels from her home to work,which is 40 miles away on Interstate 71). Accordingly, it may beinferred that since it is Thursday, she is traveling to work viaInterstate 71.

Based on the planned and/or inferred route information, segments of theroute may be ascertained by the route determiner 302. Thus, users thatare sharing at least some route segments may be linked while travelingalong those route segments.

The system 300 may also include a route comparator 304 that compares aroute of the first user with respective routes of users in the group ofusers. The route comparator 304 also utilizes information related to thetiming of when each user of the group of users travels (or will betraveling) along a particular route segment. For example, a first useris traveling along a route segment, and a second user is just up aheadand both users have indicated they would like to pair with others. Then,the first user may be instructed to speed up slightly, and the seconduser is instructed to slow down slightly in order for the users to jointogether.

According to some implementations, at least some of the route segmentsmay be output to the user in a perceivable format, such as on a mapdisplay. The route segment and/or other information (e.g., instructions,identification of other riders, and so on) may be output on a head-updisplay viewable by the first user. If the user is a motorcycle riderthat is wearing a helmet, the route segment and/or other information maybe output on the motorcycle helmet (e.g., on a helmet shield or anotherpotion of the helmet) that includes the heads up display. In anotherexample, the information may be output on a windshield. According toanother example, the information may be output on a mobile device (e.g.,a user phone, a watch, and so on).

FIG. 4 illustrates an example non-limiting system 400 that provides aranking of nearby riders for rider pairing according to an aspect ofthis disclosure. In some instances, there may be multiple riders in aparticular geographic area with which the first rider may connect. Insome instances, two or more of the riders may be suitable for the firstrider. Therefore, a rate monitor 402 may provide the first riderrespective rankings for the riders in the group of riders.

For example, the rate monitor 402 may determine how closely a profile ofthe first rider matches each profile of the other riders in thegeographic area. In an implementation, each parameter or setting withinthe respective profiles may be compared and an aggregate of the settingsutilized to determine the ranking.

According to some implementations, the ranking may be based onpredefined criteria and/or rider preferences. For example, it may bemore important for the first rider to pair with another rider such thatthe will be traveling a long distance together, regardless of whetherthe other rider speeds or travels close to the speed limit. In anotherexample, it may be more important for the first rider to pair withsomeone that is planning to stop at a restaurant in a few hours (and istraveling along a same route) rather than someone that plans to ride theroute straight through.

Information related to a planned route, expected stops, and so on may bemanually input by each rider on their respective interfaces. In anotherexample, information related to the route and expected stops may beinferred based on observed information, historical information, or otherconsiderations.

According to some implementations, the riders are provided informationthat details why the riders are being paired. In such a manner, eachrider may make a decision as to whether to accept the suggestion to pairwith the other rider. The rider may affirmatively accept the suggestionbased on a prompt (e.g., “Do you want to pair with Rider Y?”) The ridermay verbally approve (or disapprove) the suggestion or convey thedecision in another manner (e.g., manual input, shaking head, and soon).

FIG. 5 illustrates an example non-limiting system 500 that utilizesautomated learning according to an aspect of this disclosure. Forexample, a machine learning and reasoning component 502 may be utilizedto automate pairing riders of motorcycles or users of other modes oftransportation. The machine learning and reasoning component 502 mayemploy automated learning and reasoning procedures (e.g., the use ofexplicitly and/or implicitly trained statistical classifiers) inconnection with performing inference and/or probabilistic determinationsand/or statistical-based determinations in accordance with one or moreaspects described herein.

For example, the machine learning and reasoning component 502 may employprinciples of probabilistic and decision theoretic inference.Additionally or alternatively, the machine learning and reasoningcomponent 502 may rely on predictive models constructed using machinelearning and/or automated learning procedures. Logic-centric inferencemay also be employed separately or in conjunction with probabilisticmethods.

The machine learning and reasoning component 502 may infer whether arider is suitable to be paired with another rider, whether riders aretaking a similar route, whether riders have similar patterns andbehaviors, and so on. In some implementations, riders may providefeedback after the ride based on a prompt (e.g., did you enjoy ridingwith that person? Y/N.”) Answers to these questions might be input intothe learning or logic elements of the decision to pair. It might also beused to build up a social graph of riders who are compatible, providedthe respective riders cluster into separable groups.

In another example, the machine learning and reasoning component 502 mayinfer that a rider has certain driving behaviors and compare thosebehaviors with the driving behaviors of other riders. Such inferencesmay be made by obtaining knowledge about the road conditions, theweather conditions, information about the driver of the vehicle, vehicleinformation including maintenance information, and so on. Based on thisknowledge, the machine learning and reasoning component 502 may make aninference based on which actions to implement, whether two or moreriders should be paired, the location where the pairing should takeplace, and so on.

As used herein, the term “inference” refers generally to the process ofreasoning about or inferring states of the system, a vehicle, amotorcycle, a component, a module, the environment, and/or one or moresets of content from a set of observations as captured through events,reports, data, and/or through other forms of communication. Inferencemay be employed to identify a specific context or action, or maygenerate a probability distribution over states, for example. Theinference may be probabilistic. For example, computation of aprobability distribution over states of interest based on aconsideration of data and/or events. The inference may also refer totechniques employed for composing higher-level events from a set ofevents and/or data. Such inference results in the construction of newevents and/or actions from a set of observed events and/or stored eventdata, whether or not the events are correlated in close temporalproximity, and whether the events and/or data came from one or severalevents and/or data sources. Various classification schemes and/orsystems (e.g., support vector machines, neural networks, logic-centricproduction systems, Bayesian belief networks, fuzzy logic, data fusionengines, and so on) may be employed in connection with performingautomatic and/or inferred action in connection with the disclosedaspects.

The various aspects (e.g., in connection with observing riders andpairing groups of two or more riders, and so on) may employ variousartificial intelligence-based schemes for carrying out various aspectsthereof. For example, a process for determining if certain riders shouldbe paired, determining how to pair riders, providing instructions forthe pairing, determining for which portions of a route two or moreriders may be paired, and so on, may be enabled through an automaticclassifier system and process.

A classifier is a function that maps an input attribute vector, x=(x1,x2, x3, x4, xn), to a confidence that the input belongs to a class. Inother words, f(x) =confidence(class). Such classification may employ aprobabilistic and/or statistical-based analysis (e.g., factoring intothe analysis utilities and costs) to prognose or infer an action thatshould be employed related to route pairing as discussed herein. In thecase of pairing, for example, attributes may be identification of theriders attempting to be paired and the classes may be information (e.g.,behaviors, route to be traveled) related to the riders.

A support vector machine (SVM) is an example of a classifier that may beemployed. The SVM operates by finding a hypersurface in the space ofpossible inputs, which hypersurface attempts to split the triggeringcriteria from the non-triggering events. Intuitively, this makes theclassification correct for testing data that may be similar, but notnecessarily identical to training data. Other directed and undirectedmodel classification approaches (e.g., naïve Bayes, Bayesian networks,decision trees, neural networks, fuzzy logic models, and probabilisticclassification models) providing different patterns of independence maybe employed. Classification as used herein may be inclusive ofstatistical regression that is utilized to develop models of priority.

One or more aspects may employ classifiers that are explicitly trained(e.g., through a generic training data) as well as classifiers that areimplicitly trained (e.g., by observing changes or updates to driverbehavior, by receiving extrinsic information (e.g., a road detour,location of an accident that is blocking traffic), and so on). Forexample, SVM's may be configured through a learning or training phasewithin a classifier constructor and feature selection module. Thus, aclassifier(s) may be used to automatically learn and perform a number offunctions, including but not limited to determining which riders topair, determine when to pair riders, determining when riders should notbe paired, and so forth. The criteria may include, but is not limitedto, vehicle information, driver information, road conditions, weatherconditions, and so forth.

Additionally or alternatively, an implementation scheme (e.g., a rule, apolicy, and so on) may be applied to control and/or regulate the pairingof riders. In some implementations, based upon a predefined criterion,the rules-based implementation may automatically and/or dynamically pairriders, provide a pairing suggesting, automatically output instructionsfor the pairing, and so on. In response thereto, the rule-basedimplementation may automatically interpret and carry out functionsassociated with the pairing by employing a predefined and/or programmedrule(s) based upon any desired criteria.

Methods that may be implemented in accordance with the disclosed subjectmatter will be better appreciated with reference to the following flowcharts. While, for purposes of simplicity of explanation, the methodsare shown and described as a series of blocks, it is to be understoodand appreciated that the disclosed aspects are not limited by the numberor order of blocks, as some blocks may occur in different orders and/orat substantially the same time with other blocks from what is depictedand described herein. Moreover, not all illustrated blocks may berequired to implement the disclosed methods. It is to be appreciatedthat the functionality associated with the blocks may be implemented bysoftware, hardware, a combination thereof, or any other suitable means(e.g. device, system, process, component, and so forth). Additionally,it should be further appreciated that the disclosed methods are capableof being stored on an article of manufacture to facilitate transportingand transferring such methods to various devices. Those skilled in theart will understand and appreciate that the methods might alternativelybe represented as a series of interrelated states or events, such as ina state diagram.

FIG. 6 illustrates an example non-limiting method 600 for pairing ridersaccording to an aspect of this disclosure. The method 600 may beimplemented using any of the systems, such as the system 100 of FIG. 1,described herein.

The method 600 starts at 602 when a group of users traveling within ageographic area of a first user are determined. The group of users mayinclude those users whose profile data match the first user. Further,the group of users may be those users that have indicated the desire tobe paired with other riders.

At 604, respective profile data of each user in the group of users isevaluated based on profile data of the first user. For example,respective profile data of each user in the group of users may becompared to profile data of the first user. Thus, if the first usertends to drive the speed limit and a second user tends to speedexcessively, the first user and second user might not be paired.

Details related to a second user are output, at 606. The second user isselected from the group of users as a result of the evaluation, at 604.The details may include an identification of the second user (e.g., yourfriend “Fred”), a location of the second user, settings or behaviors ofthe second user that match the first user, settings or behaviors of thesecond user that do not match the first user, a planned route of thesecond user, and so on.

Further, at 608, instructions for pairing with the second user areprovided. According to an implementation, the instructions may includedetails related to the first user waiting at a designated location untilthe second user arrives at the designated location. The instructions maybe provided in a mapping format to allow the users to locate each other.According to some implementations, the instructions may be output in anaudible format. The details related to the second user (or other users)and/or the instructions may be output on a heads-up display, a helmet, awindshield, a user device, and so on.

FIG. 7 illustrates an example non-limiting method 700 for providinginformation to a driver to allow the driver to form a group with otherdrivers according to an aspect of this disclosure. The method 700 may beimplemented using any of the systems, such as the system 300 of FIG. 3,described herein.

At 702, a geographic area of a first user is determined. The geographicarea may be a radius having a certain distance around the first user. Inanother example, the geographic area may be a certain length of ahighway (e.g., 10 miles behind the first user and 10 miles ahead of thefirst user along a single road). In another example, the geographic areamay be a generally circular area, a generally square area, a generallylinear area, or areas having different shapes, contours, and lines.

At 704, a group of users traveling within the geographic area isdetermined. For example, the group of users may be evaluated for acommon mode of transportation (e.g., motorcycle, vehicle, bicycle,pedestrian, and so on). The group of users may include all the usersthat have previously opted into a grouping application or may onlyinclude a subset thereof.

Respective profile data of each user in the group of users is evaluated,at 706. The evaluation may include ranking each user based on acomparison between the respective profile data, at 708. The comparisonmay include how many of the settings or parameters in the respectiveprofiles match or are substantially the same. In another example, thecomparison may be based on driver preferences, wherein one or moresettings or parameters are ranked higher (or weighted differently) thanother parameters.

At 710, details relate to a second user of the group of users is outputto the first user. The details may indicate an identification of thesecond user, a profile of the second user, or other information aboutthe second user. According to an implementation, information related tosubsequent users of the group of users is output, wherein the first usermakes a determination (e.g., selects) one of the riders from the groupof users.

Instructions for pairing with the second user (or the selected user) areprovided, at 712. According to an implementation, the instructions maybe output about the same time as the first user chooses one of the otherusers or approves the recommended user. The instructions may include amap that is displayed on a heads-up display, a windshield, a helmet, auser device, glasses, or on another surface that is perceivable by thefirst user. The map may include a location of the first user, the seconduser, and other users within the group of users.

One or more implementations may include a computer-readable mediumincluding processor-executable instructions configured to implement oneor more embodiments presented herein. An embodiment of acomputer-readable medium or a computer-readable device devised in theseways is illustrated in FIG. 8, wherein an implementation 800 includes acomputer-readable medium 802, such as a CD-R, DVD-R, flash drive, aplatter of a hard disk drive, and so forth, on which is encodedcomputer-readable data 804. The computer-readable data 804, such asbinary data including a plurality of zero's and one's as illustrated, inturn includes a set of computer instructions 806 configured to operateaccording to one or more of the principles set forth herein.

In the illustrated embodiment 800, the processor-executable computerinstructions 806 may be configured to perform a method 808, such as themethod 600 of FIG. 6 and/or the method 700 of FIG. 7, for example. Inanother embodiment, the processor-executable instructions 804 may beconfigured to implement a system, such as the system 200 of FIG. 2and/or the system 400 of FIG. 4, for example. Many suchcomputer-readable media may be devised by those of ordinary skill in theart that are configured to operate in accordance with the techniquespresented herein.

As used in this application, the terms “component”, “module,” “system”,“interface”, and the like are generally intended to refer to acomputer-related entity, either hardware, a combination of hardware andsoftware, software, or software in execution. For example, a componentmay be, but is not limited to being, a process running on a processor, aprocessor, an object, an executable, a thread of execution, a program,or a computer. By way of illustration, both an application running on acontroller and the controller may be a component. One or more componentsresiding within a process or thread of execution and a component may belocalized on one computer or distributed between two or more computers.

Further, the claimed subject matter may be implemented as a method,apparatus, or article of manufacture using standard programming orengineering techniques to produce software, firmware, hardware, or anycombination thereof to control a computer to implement the disclosedsubject matter. The term “article of manufacture” as used herein isintended to encompass a computer program accessible from anycomputer-readable device, carrier, or media. Of course, manymodifications may be made to this configuration without departing fromthe scope or spirit of the claimed subject matter.

FIG. 9 and the following discussion provide a description of a suitablecomputing environment to implement embodiments of one or more of theaspects set forth herein. The operating environment of FIG. 9 is merelyone example of a suitable operating environment and is not intended tosuggest any limitation as to the scope of use or functionality of theoperating environment. Example computing devices include, but are notlimited to, personal computers, server computers, hand-held or laptopdevices, mobile devices, such as mobile phones, Personal DigitalAssistants (PDAs), media players, and the like, multiprocessor systems,consumer electronics, mini computers, mainframe computers, distributedcomputing environments that include any of the above systems or devices,etc.

Generally, embodiments are described in the general context of “computerreadable instructions” being executed by one or more computing devices.Computer readable instructions may be distributed via computer readablemedia as will be discussed below. Computer readable instructions may beimplemented as program modules, such as functions, objects, ApplicationProgramming Interfaces (APIs), data structures, and the like, thatperform one or more tasks or implement one or more abstract data types.Typically, the functionality of the computer readable instructions arecombined or distributed as desired in various environments.

FIG. 9 illustrates a system 900 that may include a computing device 902configured to implement one or more embodiments provided herein. In oneconfiguration, the computing device 902 may include at least oneprocessing unit 904 and at least one memory 906. Depending on the exactconfiguration and type of computing device, the at least one memory 906may be volatile, such as RAM, non-volatile, such as ROM, flash memory,etc., or a combination thereof. This configuration is illustrated inFIG. 9 by dashed line 908.

In other embodiments, the device 902 may include additional features orfunctionality. For example, the device 902 may include additionalstorage such as removable storage or non-removable storage, including,but not limited to, magnetic storage, optical storage, etc. Suchadditional storage is illustrated in FIG. 9 by storage 910. In one ormore embodiments, computer readable instructions to implement one ormore embodiments provided herein are in the storage 910. The storage 910may store other computer readable instructions to implement an operatingsystem, an application program, etc. Computer readable instructions maybe loaded in the at least one memory 906 for execution by the at leastone processing unit 904, for example.

Computing devices may include a variety of media, which may includecomputer-readable storage media or communications media, which two termsare used herein differently from one another as indicated below.

Computer-readable storage media may be any available storage media,which may be accessed by the computer and includes both volatile andnonvolatile media, removable and non-removable media. By way of example,and not limitation, computer-readable storage media may be implementedin connection with any method or technology for storage of informationsuch as computer-readable instructions, program modules, structureddata, or unstructured data. Computer-readable storage media may include,but are not limited to, RAM, ROM, EEPROM, flash memory or other memorytechnology, CD-ROM, digital versatile disk (DVD) or other optical diskstorage, magnetic cassettes, magnetic tape, magnetic disk storage orother magnetic storage devices, or other tangible and/or non-transitorymedia which may be used to store desired information. Computer-readablestorage media may be accessed by one or more local or remote computingdevices (e.g., via access requests, queries or other data retrievalprotocols) for a variety of operations with respect to the informationstored by the medium.

Communications media typically embody computer-readable instructions,data structures, program modules, or other structured or unstructureddata in a data signal such as a modulated data signal (e.g., a carrierwave or other transport mechanism) and includes any information deliveryor transport media. The term “modulated data signal” (or signals) refersto a signal that has one or more of its characteristics set or changedin such a manner as to encode information in one or more signals. By wayof example, and not limitation, communication media include wired media,such as a wired network or direct-wired connection, and wireless mediasuch as acoustic, RF, infrared and other wireless media.

The device 902 may include input device(s) 912 such as keyboard, mouse,pen, voice input device, touch input device, infrared cameras, videoinput devices, or any other input device. Output device(s) 914 such asone or more displays, speakers, printers, or any other output device maybe included with the device 902. The input device(s) 912 and the outputdevice(s) 914 may be connected to the device 902 via a wired connection,wireless connection, or any combination thereof. In one or moreembodiments, an input device or an output device from another computingdevice may be used as the input device(s) 912 and/or the outputdevice(s) 914 for the device 902. Further, the device 902 may includecommunication connection(s) 916 to facilitate communications with one ormore other devices, illustrated as a computing device 918 coupled over anetwork 920.

One or more applications 922 and/or program data 924 may be accessibleby the computing device 902. According to some implementations, theapplication(s) 922 and/or program data 924 are included, at least inpart, in the computing device 902. The application(s) 922 may include aroute sharing algorithm 926 that is arranged to perform the functions asdescribed herein including those described with respect to the examplenon-limiting system 400 of FIG. 4. The program data 924 may includeroute sharing commands and route sharing information 928 that may beuseful for operation with allowing one or more riders to pair with oneor more other riders in order to travel as a group as described herein.

Although the subject matter has been described in language specific tostructural features or methodological acts, it is to be understood thatthe subject matter of the appended claims is not necessarily limited tothe specific features or acts described above. Rather, the specificfeatures and acts described above are disclosed as example embodiments.

Various operations of embodiments are provided herein. The order inwhich one or more or all of the operations are described should not beconstrued as to imply that these operations are necessarily orderdependent. Alternative ordering will be appreciated based on thisdescription. Further, not all operations may necessarily be present ineach embodiment provided herein.

As used in this application, “or” is intended to mean an inclusive “or”rather than an exclusive “or.” Further, an inclusive “or” may includeany combination thereof (e.g., A, B, or any combination thereof). Inaddition, “a” and “an” as used in this application are generallyconstrued to mean “one or more” unless specified otherwise or clear fromcontext to be directed to a singular form. Additionally, at least one ofA and B and/or the like generally means A or B or both A and B. Further,to the extent that “includes”, “having”, “has”, “with”, or variantsthereof are used in either the detailed description or the claims, suchterms are intended to be inclusive in a manner similar to the term“comprising”.

Further, unless specified otherwise, “first,” “second,” or the like arenot intended to imply a temporal aspect, a spatial aspect, an ordering,etc. Rather, such terms are merely used as identifiers, names, etc. forfeatures, elements, items, etc. For example, a first channel and asecond channel generally correspond to channel A and channel B or twodifferent or two identical channels or the same channel. Additionally,“comprising,” “comprises,” “including,” “includes,” or the likegenerally means comprising or including.

Although the disclosure has been shown and described with respect to oneor more implementations, equivalent alterations and modifications willoccur based on a reading and understanding of this specification and theannexed drawings. The disclosure includes all such modifications andalterations and is limited only by the scope of the following claims.

1. An organic gathering system for route sharing, comprising: a profilemanager determining settings associated with a first vehicle based onuser input data or observed data, for pairing with at least a secondvehicle during travel, wherein the settings include at least one ofdriving habits, riding habits, route preferences, destination, skilllevel and vehicle style; an observation manager determining a group ofvehicles in a defined geographic area based upon the determined settingsassociated with the first vehicle, for pairing with the first vehicleduring at least a portion of the travel, the group of vehicles includesat least the second vehicle; a linking component pairing the firstvehicle with at least the second vehicle based on respective determinedsettings from the determined group of vehicles in the defined geographicarea; and a navigation manager providing instructions to the firstvehicle and the at least second vehicle related to the pairing, theinstructions include an action to be performed by the first vehicle topair with at least the second vehicle.
 2. The organic gathering systemof claim 1, wherein the navigation manager instructs the first vehicleto wait at a particular location for at least the second vehicle. 3.(canceled)
 4. The organic gathering system of claim 1, comprising aroute determiner evaluating planned routes of the group of vehicles inview of a planned route of the first vehicle and selecting at least thesecond vehicle based on the planned routes.
 5. The organic gatheringsystem of claim 1, the navigation manager outputs the instructions in anaudio format, a visual format, a haptic format, or combinations thereof.6. The organic gathering system of claim 1, wherein the first vehicleand at least the second vehicle are motorcycles and the navigationmanager outputs the instructions on a motorcycle helmet that includes aheads-up display.
 7. The organic gathering system of claim 1, whereinthe first vehicle is a first drone and at least the second vehicle is asecond drone.
 8. The organic gathering system of claim 1, comprising arate monitor providing to the first vehicle respective rankings for thevehicles in the group of vehicles, the respective rankings relate to amatch between a recommended profile for the vehicle and respectiveprofiles of the users in the group of vehicles.
 9. The organic gatheringsystem of claim 1, comprising a route comparator comparing a route ofthe first vehicle with respective routes of the vehicles in the group ofvehicles.
 10. The organic gathering system of claim 1, the navigationcomponent outputs the instructions on a mobile device.
 11. The organicgathering system of claim 1, the navigation component outputs theinstructions on a windshield.
 12. A method for pairing two or more usersfor travel together, comprising: determining, by a system comprising aprocessor, profile data associated with a first user based on user inputdata or observed data, wherein the profile data indclude at least one ofdriving habits, riding habits, route preferences, destination, skilllevel and vehicle style determining, by the system, a group of userstraveling within a geographic area of the first user based upon profiledata of the first user; evaluating, by the system, respective profiledata of each user in the group of users determined to be traveling withthe geographic area based on profile data of the first user; outputting,by the system, details related to a second user of the group of users asa result of the evaluating; and providing, by the system, instructionsto the first user and the second user for pairing with the second user,the instructions include at least details to the first user related towaiting at a designated location until the second user arrives at thedesignated location.
 13. The method of claim 12, the evaluatingcomprises ranking each user in the group of users based on a comparisonbetween the respective profile data and the profile data of the firstuser.
 14. The method of claim 12, the outputting comprises providing mapinformation with an indication of the location of the first user andrespective locations of the users of the group of users.
 15. The methodof claim 12, the outputting comprises outputting the details on a headsup display.
 16. The method of claim 12, the outputting comprisesoutputting the details on a windshield.
 17. The method of claim 12, theoutputting comprises outputting the details on a mobile device.
 18. Anorganic gathering system for pairing motorcycle riders, comprising: aprofile manager determining preferences associated with a motorcyclerider based on user input data or observed data, for pairing themotorcycle rider with another motorcycle rider, wherein the preferencesinclude at least one of driving habits, riding habits, routepreferences, destination, skill level and vehicle style; an observationmanager determining other motorcycle riders that are located within adefined area of the motorcycle rider based upon the determinedpreferences associated with the motorcycle rider; a rate monitor rankingthe other motorcycle riders based on a comparison between thepreferences associated with the motorcycle rider and respectivepreferences associated with the other motorcycle riders; an interfacecomponent receiving a selection of at least one motorcycle rider fromthe other motorcycle riders; and a navigation manager outputtinginstructions to the motorcycle rider and the other motorcycle rider thatallows the motorcycle rider to pair with at least the one motorcyclerider based on at least the motorcycle rider stopping at a determinedlocation for at least the one motorcycle rider.
 19. The organicgathering system for pairing motorcycle riders of claim 18, thenavigation manager outputting the instructions on a heads up displayviewable by the motorcycle rider.
 20. The organic gathering system forpairing motorcycle riders of claim 18, comprising a notificationcomponent that notifies at least the one motorcycle rider that themotorcycle rider would like to pair for at least a portion of a route.